package com.lintf.devdemo.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lintf.devdemo.entity.dto.ExportUserInfoExcelDto;
import com.lintf.devdemo.entity.dto.UserInfoSelectDto;
import com.lintf.devdemo.entity.po.UserInfo;
import com.lintf.devdemo.entity.vo.ExportUserInfoExcelVo;
import com.lintf.devdemo.entity.vo.UserInfoVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @ system:Window
 * @ author:lin tingfeng
 * @ data:2022/09/29-17:08
 * @ package_name:com.lintf.devdemo.dao
 * @ project_name:DevDemo
 * @ desc:用户基础信息持久层
 */
@Repository
public interface UserInfoMapper extends BaseMapper<UserInfo> {

    List<UserInfoVo> getUserInfoList();

    List<UserInfoVo> getUserInfoListByCondition(@Param("userInfoSelectDto") UserInfoSelectDto userInfoSelectDto);

    List<ExportUserInfoExcelVo> exportUserInfoExcel(@Param("exportUserInfoExcelDto") ExportUserInfoExcelDto exportUserInfoExcelDto);

    UserInfoVo getUserInfoListById(@Param("id") Integer id);

    List<Map<String,Object>> getUserInfoListByIdMap();

}
